package com.dys.dao;

import com.dys.entity.Person;

import java.sql.SQLException;
import java.util.List;

/**
 * @className: com.dys.dao.PersonDAO
 * @description: 准备到PersonDao接口，提供抽象方法，对外提供哪些功能
 * @author: pine cone
 * @version: v1.0.0
 * @createTime: 2024/09/12 下午10:46
 */
public interface PersonDAO {

    /**
     * 插入一条Person数据
     *
     * @param person 具体对象
     * @return 插入成功 or 插入失败 的描述
     */
    int insert(Person person) throws SQLException;

    /**
     * 根据Id修改person信息
     *
     * @param person 具体对象
     * @return 修改成功 or 修改失败 的描述
     */
    int updateById(Person person) throws SQLException;

    /**
     * 根据id删除一条person
     *
     * @param id 具体对象ID
     * @return 删除成功 or 删除失败 的描述
     */
    int deleteById(int id) throws SQLException;

    /**
     * 根据id查询一条person信息
     *
     * @param id 具体对象编号
     * @return
     */
    Person findById(int id) throws SQLException;

    /**
     * 查询全部person信息
     *
     * @return 所有Person类
     */
    List<Person> findAll() throws SQLException;
}
